/*
 * Copyright (C) 2010 TopCoder Inc., All Rights Reserved.
 */
package com.hercules.android.receiver.entities;

/**
 * <p>
 * A POJO containing the capabilities when initiating a connection with the XRE
 * host.
 * </p>
 * 
 * @author TCSASSEMBER
 * @version 1.0
 */
public class DeviceCapabilities {
    /**
     * The version of the XRE receiver software in the form X.Y.Z.
     */
    private String receiverVersion;

    /**
     * The receiver's platform / operating system.
     */
    private String platform;

    /**
     * The version of the receiver's platform.
     */
    private String platformVersion;

    /**
     * An array of strings containing the mime types that the receiver supports.
     */
    private String[] mimeTypes;

    /**
     * An array of exactly two elements containing the native resolution of the
     * receiver.
     */
    private Integer[] nativeDimensions;

    /**
     * Gets the version of receiver software.
     * 
     * @return the version of receiver software
     */
    public String getReceiverVersion() {
        return receiverVersion;
    }

    /**
     * Sets the version of receiver software.
     * 
     * @param receiverVersion
     *            the version of receiver software
     */
    public void setReceiverVersion(String receiverVersion) {
        this.receiverVersion = receiverVersion;
    }

    /**
     * Gets receiver's platform.
     * 
     * @return receiver's platform
     */
    public String getPlatform() {
        return platform;
    }

    /**
     * Sets receiver's platform.
     * 
     * @param platform
     *            receiver's platform
     */
    public void setPlatform(String platform) {
        this.platform = platform;
    }

    /**
     * Gets the version of receiver's platform.
     * 
     * @return the version of receiver's platform
     */
    public String getPlatformVersion() {
        return platformVersion;
    }

    /**
     * Sets the version of receiver's platform.
     * 
     * @param platformVersion
     *            the version of receiver's platform
     */
    public void setPlatformVersion(String platformVersion) {
        this.platformVersion = platformVersion;
    }

    /**
     * Gets the mime types that the receiver supports.
     * 
     * @return the mime types that the receiver supports
     */
    public String[] getMimeTypes() {
        return mimeTypes;
    }

    /**
     * Sets the mime types that the receiver supports.
     * 
     * @param mimeTypes
     *            the mime types that the receiver supports
     */
    public void setMimeTypes(String[] mimeTypes) {
        this.mimeTypes = mimeTypes;
    }

    /**
     * Gets the native resolution of the receiver.
     * 
     * @return the native resolution of the receiver
     */
    public Integer[] getNativeDimensions() {
        return nativeDimensions;
    }

    /**
     * Sets the native resolution of the receiver.
     * 
     * @param nativeDimensions
     *            the native resolution of the receiver
     */
    public void setNativeDimensions(Integer[] nativeDimensions) {
        this.nativeDimensions = nativeDimensions;
    }

}
